package com.orange.community.dao;

import com.orange.community.entity.DiscussPost;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author GaryGyp
 */
@Mapper
public interface DiscussPostMapper {

    /**
     * 首页查询功能
     */

    // offset：每一页起始行的行号 --- limit：每页最多显示多少个数据
    List<DiscussPost> selectDiscussPosts(int userId, int offset, int limit, int orderMode);

    // 查询帖子的行数
    // @Param注解用于给参数取别名，如果只有一个参数，并且在<if>里面使用，则必须加上别名
    int selectDiscussPostRows(@Param("userId") int userId);

    // 增加帖子
    int insertDiscussPost(DiscussPost discussPost);

    // 查询帖子的详情
    DiscussPost selectDiscussPostById(int id);

    // 更新帖子的评论数量
    int updateCommentCount(int id, int commentCount);

    // 修改帖子类型
    int updateType(int id, int type);

    // 修改帖子状态
    int updateStatus(int id, int status);

    //更新帖子分数
    int updateScore(int id, double score);

}
